#include <stdio.h>
int main()
{
    int a,b,i,j,k;//a为输入行数
    scanf("%d",&a);
    for(b=0;b<a;b++)
    {
       for(i=0;i<a-b;i++)
       {
        printf("%c",' ');
       }
       for(j=0;j<b;j++)
       {
        printf("%c",'A'+j);
       }
       for(k=b-2;k>=0;k--)
       {
        printf("%c",'A'+k);
       }
       printf("%c",'\n');

    }
}
//思路：输入行数 a，逐行打印：先输出 a-b 个空格作左缩进，再升序输出 A 到 A+b-1，最后降序输出 A+b-2 到 A，形成对称金字塔。
/*写代码时遇到的问题以及修改：
1、问题：printf("%c", 'A+j');
        printf("%c", 'A+k');
   这是错误的字符常量写法，因为 'A+j' 不是一个合法的字符常量，单引号里只能放一个字符，不能是表达式。
   正确写法：应该是使用表达式计算字符值：
   printf("%c", 'A' + j);
   printf("%c", 'A' + k);

2、问题：printf("%c", " ");
这是错误的，因为 " " 是字符串（char*），而 %c 期望的是一个字符（char）。
正确写法：
printf("%c", ' ');

3、变量初始化问题
for(j=0;j<b-1;j++)
当 b=0 或 b=1 时，b-1 是负数或 0，这个循环不会执行，可能导致图案缺失或错位。
事实上应该是j<b


*/
